home *** CD-ROM | disk | FTP | other *** search
/ PC World 2008 September / PCWorld_2008-09_cd.bin / v cisle / sadanastroju / delicious_bookmarks-2.0.64-fx.xpi / chrome / deliciousBookmarks.jar / content / ybAddBookmark2.js < prev    next >
Encoding:
Text File  |  2008-06-19  |  3.1 KB  |  77 lines

  1. var ybOnOK = null;
  2.  
  3. function ybAddHook() {
  4.     ybOnOK = onOK;
  5.     onOK = function() { ybOnOK();
  6.                         ybHook(); };
  7. }
  8.  
  9. function isEngineInstalled() {
  10.       var installed = false;
  11.       var strings = document.getElementById("ybookmarks-strings");
  12.       var newVersionNum = strings.getString("extensions.ybookmarks.versionNum");
  13.       yDebug.print("ybAddBookmark.js::isEngineInstalled()=>newVersionNum= "+newVersionNum,
  14.               YB_LOG_MESSAGE);
  15.       try {
  16.           var prefs = Components.classes["@mozilla.org/preferences-service;1"]
  17.                       .getService(Components.interfaces.nsIPrefBranch);
  18.           var oldVersionNum = prefs.getCharPref("extensions.ybookmarks@yahoo.version.number");
  19.                  yDebug.print("ybAddBookmark.js::isEngineInstalled()=>oldVersionNum= "+oldVersionNum,
  20.               YB_LOG_MESSAGE);
  21.    
  22.       }catch (e){
  23.           yDebug.print("ybAddBookmark.js::isEngineInstalled() =>Engine not installed",
  24.               YB_LOG_MESSAGE);
  25.       }               
  26.       if(newVersionNum == oldVersionNum){
  27.           installed = true;
  28.         yDebug.print("ybAddBookmark.js::isEngineInstalled() =>Engine installed",
  29.               YB_LOG_MESSAGE);
  30.          }
  31.          return installed;
  32. }
  33.  
  34. function ybHook() {
  35.   try {
  36.     var prefs = Components.classes["@mozilla.org/preferences-service;1"].
  37.                   getService(Components.interfaces.nsIPrefBranch);         
  38.     
  39.     if (!isEngineInstalled()) {
  40.       return;
  41.     } 
  42.     
  43.     var remindCheck = prefs.getBoolPref("extensions.ybookmarks@yahoo.original.add.suggest.delicious");
  44.     if (remindCheck) {
  45.         var strings = document.getElementById("ybookmarks-strings");
  46.         var promptService = Components.classes["@mozilla.org/embedcomp/prompt-service;1"].
  47.                               getService(Components.interfaces.nsIPromptService);
  48.  
  49.         var title = strings.getString("extensions.ybookmarks.original.add.dialog.hook.title");
  50.         var text = strings.getString("extensions.ybookmarks.original.add.dialog.hook.text");
  51.         var remind = strings.getString("extensions.ybookmarks.original.add.dialog.hook.remind");    
  52.       remindCheck = { value: true };
  53.       var promptFlags = (promptService.BUTTON_TITLE_NO * promptService.BUTTON_POS_0) +
  54.                         (promptService.BUTTON_TITLE_YES * promptService.BUTTON_POS_1) +
  55.                         promptService.BUTTON_POS_1_DEFAULT;
  56.                       
  57.         var addToDel = promptService.confirmEx(this, title, text, promptFlags, "", "", "", remind, remindCheck);
  58.  
  59. /*        yDebug.print("hooked!: add: " + addToDel +  " remind: " +  remindCheck.value);*/
  60.       
  61.       if (!remindCheck.value) {
  62.         prefs.setBoolPref("extensions.ybookmarks@yahoo.original.add.suggest.delicious", false);
  63.       }
  64.       
  65.         if (addToDel == 1) {
  66.           //url, title, charset, isWebPanel, notes, feedUrl, blankEntry, postData, keywordInput 
  67.           yAddBookMark.open(gArg.url, gArg.name, gArg.charset, gArg.bWebPanel, gArg.description, gArg.feedURL, false, gArg.postData, gArg.bNeedKeyword);
  68.         }
  69.     }
  70.     
  71.   } catch (e) {
  72.     yDebug.print("ybHook" + e, YB_LOG_MESSAGE);
  73.   }
  74. }
  75.  
  76. window.addEventListener("load", ybAddHook, false);
  77.